package cn.s1995.sloth.admin.api.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.File;
import java.io.Serializable;

/**
 * ProcessFileDTO
 *
 * @author Lex
 * @description 处理文件
 * @date 2024/01/30 20:33
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Schema(description = "处理文件")
public class ProcessFileDTO implements Serializable {
    /**
     * 文件类型
     */
    private String type;
    /**
     * 文件夹
     */
    private String dir;

    /**
     * 原文件名
     */
    private String originalFilename;

    /**
     * 文件名
     */
    private String fileName;
    /**
     * 原文件名
     */
    private String originFileName;
    /**
     * 文件扩展名
     */
    private String fileExtName;
    /**
     * 文件前缀名
     */
    private String filePrefixName;
    /**
     * 文件大小
     */
    private Long fileSize;
    /**
     * 文件分组ID
     */
    private Long groupId;
    /**
     * 内容类型
     */
    private String contentType;

    /**
     * 是否处理图片压缩
     */
    private Boolean isHandlePicCompression;

    /**
     * 是否处理视频帧
     */
    private Boolean isHandleVideoFrame;

    /**
     * 视频帧文件名
     */
    private String videoFrameFileName;

    /**
     * 视频帧后缀名
     */
    private String videoFrameExtName;

    /**
     * 阿里OSS视频帧参数值
     */
    private String videoFrameParamValue;

    /**
     * 视频url
     */
    private String videoUrl;

    /**
     * 视频帧url
     */
    private File videoDownloadFile;



}
